/** ###################################################################
**     Filename  : line_detection.h
**     Project   : ccd2
**     Processor : MCF52255CAF80
**     Version   : Driver 01.00
**     Compiler  : CodeWarrior MCF C Compiler
**     Arthor	 : Yumi Chan, Cindy Yu
**     Abstract  :
**         
**     Settings  :
**     Contents  :
**         No public methods
**
** ###################################################################*/

#ifndef __LINE_DETECTION_H
#define __LINE_DETECTION_H


/* Include */
#include "support_common.h"
#include "linear_ccd.h"


/* Private typedef */
typedef enum trackCondition
{
	STRAIGHT = 10,
	START_TURN_LEFT,
	START_TURN_RIGHT,
	TURN_LEFT,
	TURN_RIGHT,
	CROSSROAD,
	S_CURVE,
	GO_UP,
	GO_DOWN,
	OFF_TRACK_LEFT,
	OFF_TRACK_RIGHT
} trackCondition;


/* Variables */
extern trackCondition* current_state;
extern trackCondition* future_state;


/* Private Method Declaration */
void setCurrentState(trackCondition cond, trackCondition** ptr, trackCondition state[]);

#endif